#include <stdio.h>
#include <string.h>

int n;
struct sfd
{
	double x,y;
}shu[50000];

double anx[50000];
double any[50000];


main()
{
	
	int i,j;
	double totx, toty;
	while (scanf("%d", &n)!=EOF)
	{
		memset(shu,0,sizeof(shu));
		for (i=1;i<=n;i++)
		{
			scanf("%lf%lf", &shu[i].x, &shu[i].y);
			shu[i+n]=shu[i];
		}
		
		//count:
		totx=toty=0;
		for (i=1;i<=n;i++)
		{
			totx+=shu[i].x;
			toty+=shu[i].y;
		}
		int n2;
		double nowx,nowy;
		int time;
		n2=n/2;
		for (i=1;i<=n;i++)
		{
			nowx=nowy=0;
			for (j=i+1,time=1;time<=n2;j+=2,time++)
			{
				nowx+=shu[j].x*2;
				nowy+=shu[j].y*2;
			}
			anx[i]=totx-nowx;
			any[i]=toty-nowy;

		}
		//output
		printf("%d", n);
		for (i=1;i<=n;i++)
		{
			printf(" %.6lf %.6lf", anx[i], any[i]);
		}
		printf("\n");
		
		
		
	}
	return 0;
}